package com.shop.cereshop.commons.domain.agent;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;

import java.time.LocalDateTime;

@Data
@ApiModel(value = "CereAgentRealnameAuth", description = "代理商名认证")
@TableName("cere_agent_realname_auth")
public class CereAgentRealnameAuth {

    @ApiModelProperty(value = "主键ID")
//    自增
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "用户ID")
    private Long agentUserId;

    @ApiModelProperty(value = "真实姓名")
    private String realName;

    @ApiModelProperty(value = "证件类型：1身份证，2护照，3港澳通行证")
    private Integer idCardType;

    @ApiModelProperty(value = "证件号码")
    private String idCardNumber;

    @ApiModelProperty(value = "证件正面照片URL")
    private String idCardFront;

    @ApiModelProperty(value = "证件背面照片URL")
    private String idCardBack;

    @ApiModelProperty(value = "人脸照片")
    private String idCardHandheld;

    @ApiModelProperty(value = "认证状态：0未认证，1审核中，2已认证，3认证失败")
    private Integer authStatus;

    @ApiModelProperty(value = "认证时间")
    private LocalDateTime authTime;

    @ApiModelProperty(value = "认证失败原因")
    private String authFailReason;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;

    @ApiModelProperty(value = "请求数据")
    private String requestData;

    @ApiModelProperty(value = "响应数据")
    private String responseData;

    @ApiModelProperty(value = "状态码")
    private String statusCode;

    @ApiModelProperty(value = "注册人手机号码")
    private String phone;
}
